home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 7: Sunsite / Linux Cubed Series 7 - Sunsite Vol 1.iso / system / news / inn1.000 / inn1.4sec-linux-src.tar / inn / makedirs.sh < prev    next >
Linux/UNIX/POSIX Shell Script  |  1993-03-18  |  2KB  |  87 lines

  1. #! /bin/sh
  2. ##  $Revision: 1.6 $
  3. ##  Script to make INN directories.
  4.  
  5. ##  Some systems don't support -x, so we have to use -f.
  6. CHOWN=chown
  7. if [ ${CHOWN} = chown ] ; then
  8.     if [ -f /etc/chown ] ; then
  9.     CHOWN=/etc/chown
  10.     else
  11.     if [ -f /usr/etc/chown ] ; then
  12.         CHOWN=/usr/etc/chown
  13.     fi
  14.     fi
  15. fi
  16.  
  17. ##  =()<MAN1=@<MAN1>@>()=
  18. MAN1=/usr/local/man/man1
  19. ##  =()<MAN3=@<MAN3>@>()=
  20. MAN3=/usr/local/man/man3
  21. ##  =()<MAN5=@<MAN5>@>()=
  22. MAN5=/usr/local/man/man5
  23. ##  =()<MAN8=@<MAN8>@>()=
  24. MAN8=/usr/local/man/man8
  25.  
  26. ##  =()<SPOOL=@<_PATH_SPOOL>@>()=
  27. SPOOL=/news/spool
  28. ##  =()<ARCHIVEDIR=@<_PATH_ARCHIVEDIR>@>()=
  29. ARCHIVEDIR=/news/spool/news.archive
  30. ##  =()<BATCHDIR=@<_PATH_BATCHDIR>@>()=
  31. BATCHDIR=/news/spool/out.going
  32. ##  =()<MOST_LOGS=@<_PATH_MOST_LOGS>@>()=
  33. MOST_LOGS=/var/log/news
  34. ##  =()<SPOOLNEWS=@<_PATH_SPOOLNEWS>@>()=
  35. SPOOLNEWS=/var/spool/rnews
  36. ##  =()<BADNEWS=@<_PATH_BADNEWS>@>()=
  37. BADNEWS=/var/spool/rnews/bad
  38. ##  =()<SPOOLTEMP=@<_PATH_SPOOLTEMP>@>()=
  39. SPOOLTEMP=/var/spool/rnews/tmp
  40.  
  41. ##  =()<NEWSLIB=@<_PATH_NEWSLIB>@>()=
  42. NEWSLIB=/news/lib
  43. ##  =()<NEWSBIN=@<_PATH_NEWSBIN>@>()=
  44. NEWSBIN=/news/bin
  45. ##  =()<CONTROLPROGS=@<_PATH_CONTROLPROGS>@>()=
  46. CONTROLPROGS=/news/bin/control
  47. ##  =()<RNEWSPROGS=@<_PATH_RNEWSPROGS>@>()=
  48. RNEWSPROGS=/news/bin/rnews
  49. ##  =()<INNDDIR=@<_PATH_INNDDIR>@>()=
  50. INNDDIR=/news/lib/innd
  51. ## =()<MOST_LOGS=@<_PATH_MOST_LOGS>@>()=
  52. MOST_LOGS=/var/log/news
  53.  
  54. ##  =()<NEWSUSER=@<NEWSUSER>@>()=
  55. NEWSUSER=news
  56. ##  =()<NEWSGROUP=@<NEWSGROUP>@>()=
  57. NEWSGROUP=news
  58.  
  59. PFLAG="$1"
  60. umask 0
  61. set -x
  62.  
  63. for F in \
  64. ${MAN1} ${MAN3} ${MAN5} ${MAN8} \
  65. ${SPOOL} ${ARCHIVEDIR} ${BATCHDIR} ${MOST_LOGS} ${MOST_LOGS}/OLD \
  66. ${SPOOLNEWS} ${BADNEWS} ${SPOOLTEMP} \
  67. ${NEWSLIB} ${INNDDIR} \
  68. ${NEWSBIN} ${CONTROLPROGS} ${RNEWSPROGS} ; do
  69.  
  70.     if [ ! -d ${F} ] ; then
  71.     mkdir ${PFLAG} ${F} || exit 1
  72.     ${CHOWN} ${NEWSUSER} ${F} || exit 1
  73.     chgrp ${NEWSGROUP} ${F} || exit 1
  74.     case ${F} in
  75.     ${INNDDIR})
  76.         chmod 0770 ${F} || exit 1
  77.         ;;
  78.     *)
  79.         chmod 0775 ${F} || exit 1
  80.         ;;
  81.     esac
  82.     fi
  83.  
  84. done
  85.  
  86. exit 0
  87.